home *** CD-ROM | disk | FTP | other *** search
/ Sky at Night 2007 June / SAN CD 6-2007 CD-ROM 25.iso / pc / Software / AstroGrav_Win / Java / jre1.6.0 / lib / rt.jar / java / awt / Checkbox.class (.txt) < prev    next >
Encoding:
Java Class File  |  2006-11-29  |  5.2 KB  |  261 lines

  1. package java.awt;
  2.  
  3. import java.awt.event.ItemEvent;
  4. import java.awt.event.ItemListener;
  5. import java.awt.peer.CheckboxPeer;
  6. import java.io.IOException;
  7. import java.io.ObjectInputStream;
  8. import java.io.ObjectOutputStream;
  9. import java.util.EventListener;
  10. import javax.accessibility.Accessible;
  11. import javax.accessibility.AccessibleContext;
  12.  
  13. public class Checkbox extends Component implements ItemSelectable, Accessible {
  14.    String label;
  15.    boolean state;
  16.    CheckboxGroup group;
  17.    transient ItemListener itemListener;
  18.    private static final String base = "checkbox";
  19.    private static int nameCounter;
  20.    private static final long serialVersionUID = 7270714317450821763L;
  21.    private int checkboxSerializedDataVersion;
  22.  
  23.    void setStateInternal(boolean var1) {
  24.       this.state = var1;
  25.       CheckboxPeer var2 = (CheckboxPeer)this.peer;
  26.       if (var2 != null) {
  27.          var2.setState(var1);
  28.       }
  29.  
  30.    }
  31.  
  32.    public Checkbox() throws HeadlessException {
  33.       this("", false, (CheckboxGroup)null);
  34.    }
  35.  
  36.    public Checkbox(String var1) throws HeadlessException {
  37.       this(var1, false, (CheckboxGroup)null);
  38.    }
  39.  
  40.    public Checkbox(String var1, boolean var2) throws HeadlessException {
  41.       this(var1, var2, (CheckboxGroup)null);
  42.    }
  43.  
  44.    public Checkbox(String var1, boolean var2, CheckboxGroup var3) throws HeadlessException {
  45.       this.checkboxSerializedDataVersion = 1;
  46.       GraphicsEnvironment.checkHeadless();
  47.       this.label = var1;
  48.       this.state = var2;
  49.       this.group = var3;
  50.       if (var2 && var3 != null) {
  51.          var3.setSelectedCheckbox(this);
  52.       }
  53.  
  54.    }
  55.  
  56.    public Checkbox(String var1, CheckboxGroup var2, boolean var3) throws HeadlessException {
  57.       this(var1, var3, var2);
  58.    }
  59.  
  60.    String constructComponentName() {
  61.       synchronized(this.getClass()) {
  62.          return "checkbox" + nameCounter++;
  63.       }
  64.    }
  65.  
  66.    public void addNotify() {
  67.       synchronized(this.getTreeLock()) {
  68.          if (this.peer == null) {
  69.             this.peer = this.getToolkit().createCheckbox(this);
  70.          }
  71.  
  72.          super.addNotify();
  73.       }
  74.    }
  75.  
  76.    public String getLabel() {
  77.       return this.label;
  78.    }
  79.  
  80.    public void setLabel(String var1) {
  81.       boolean var2 = false;
  82.       synchronized(this) {
  83.          if (var1 != this.label && (this.label == null || !this.label.equals(var1))) {
  84.             this.label = var1;
  85.             CheckboxPeer var4 = (CheckboxPeer)this.peer;
  86.             if (var4 != null) {
  87.                var4.setLabel(var1);
  88.             }
  89.  
  90.             var2 = true;
  91.          }
  92.       }
  93.  
  94.       if (var2 && this.valid) {
  95.          this.invalidate();
  96.       }
  97.  
  98.    }
  99.  
  100.    public boolean getState() {
  101.       return this.state;
  102.    }
  103.  
  104.    public void setState(boolean var1) {
  105.       CheckboxGroup var2 = this.group;
  106.       if (var2 != null) {
  107.          if (var1) {
  108.             var2.setSelectedCheckbox(this);
  109.          } else if (var2.getSelectedCheckbox() == this) {
  110.             var1 = true;
  111.          }
  112.       }
  113.  
  114.       this.setStateInternal(var1);
  115.    }
  116.  
  117.    public Object[] getSelectedObjects() {
  118.       if (this.state) {
  119.          Object[] var1 = new Object[]{this.label};
  120.          return var1;
  121.       } else {
  122.          return null;
  123.       }
  124.    }
  125.  
  126.    public CheckboxGroup getCheckboxGroup() {
  127.       return this.group;
  128.    }
  129.  
  130.    public void setCheckboxGroup(CheckboxGroup var1) {
  131.       if (this.group != var1) {
  132.          CheckboxGroup var2;
  133.          boolean var3;
  134.          synchronized(this) {
  135.             var2 = this.group;
  136.             var3 = this.getState();
  137.             this.group = var1;
  138.             CheckboxPeer var5 = (CheckboxPeer)this.peer;
  139.             if (var5 != null) {
  140.                var5.setCheckboxGroup(var1);
  141.             }
  142.  
  143.             if (this.group != null && this.getState()) {
  144.                if (this.group.getSelectedCheckbox() != null) {
  145.                   this.setState(false);
  146.                } else {
  147.                   this.group.setSelectedCheckbox(this);
  148.                }
  149.             }
  150.          }
  151.  
  152.          if (var2 != null && var3) {
  153.             var2.setSelectedCheckbox((Checkbox)null);
  154.          }
  155.  
  156.       }
  157.    }
  158.  
  159.    public synchronized void addItemListener(ItemListener var1) {
  160.       if (var1 != null) {
  161.          this.itemListener = AWTEventMulticaster.add(this.itemListener, var1);
  162.          this.newEventsOnly = true;
  163.       }
  164.    }
  165.  
  166.    public synchronized void removeItemListener(ItemListener var1) {
  167.       if (var1 != null) {
  168.          this.itemListener = AWTEventMulticaster.remove(this.itemListener, var1);
  169.       }
  170.    }
  171.  
  172.    public synchronized ItemListener[] getItemListeners() {
  173.       return (ItemListener[])this.getListeners(ItemListener.class);
  174.    }
  175.  
  176.    public <T extends EventListener> T[] getListeners(Class<T> var1) {
  177.       Object var2 = null;
  178.       if (var1 == ItemListener.class) {
  179.          ItemListener var3 = this.itemListener;
  180.          return (T[])AWTEventMulticaster.getListeners(var3, var1);
  181.       } else {
  182.          return (T[])super.getListeners(var1);
  183.       }
  184.    }
  185.  
  186.    boolean eventEnabled(AWTEvent var1) {
  187.       if (var1.id == 701) {
  188.          return (this.eventMask & 512L) != 0L || this.itemListener != null;
  189.       } else {
  190.          return super.eventEnabled(var1);
  191.       }
  192.    }
  193.  
  194.    protected void processEvent(AWTEvent var1) {
  195.       if (var1 instanceof ItemEvent) {
  196.          this.processItemEvent((ItemEvent)var1);
  197.       } else {
  198.          super.processEvent(var1);
  199.       }
  200.    }
  201.  
  202.    protected void processItemEvent(ItemEvent var1) {
  203.       ItemListener var2 = this.itemListener;
  204.       if (var2 != null) {
  205.          var2.itemStateChanged(var1);
  206.       }
  207.  
  208.    }
  209.  
  210.    protected String paramString() {
  211.       String var1 = super.paramString();
  212.       String var2 = this.label;
  213.       if (var2 != null) {
  214.          var1 = var1 + ",label=" + var2;
  215.       }
  216.  
  217.       return var1 + ",state=" + this.state;
  218.    }
  219.  
  220.    private void writeObject(ObjectOutputStream var1) throws IOException {
  221.       var1.defaultWriteObject();
  222.       AWTEventMulticaster.save(var1, "itemL", this.itemListener);
  223.       var1.writeObject((Object)null);
  224.    }
  225.  
  226.    private void readObject(ObjectInputStream var1) throws ClassNotFoundException, IOException, HeadlessException {
  227.       GraphicsEnvironment.checkHeadless();
  228.       var1.defaultReadObject();
  229.  
  230.       Object var2;
  231.       while(null != (var2 = var1.readObject())) {
  232.          String var3 = ((String)var2).intern();
  233.          if ("itemL" == var3) {
  234.             this.addItemListener((ItemListener)var1.readObject());
  235.          } else {
  236.             var1.readObject();
  237.          }
  238.       }
  239.  
  240.    }
  241.  
  242.    private static native void initIDs();
  243.  
  244.    public AccessibleContext getAccessibleContext() {
  245.       if (this.accessibleContext == null) {
  246.          this.accessibleContext = new AccessibleAWTCheckbox(this);
  247.       }
  248.  
  249.       return this.accessibleContext;
  250.    }
  251.  
  252.    static {
  253.       Toolkit.loadLibraries();
  254.       if (!GraphicsEnvironment.isHeadless()) {
  255.          initIDs();
  256.       }
  257.  
  258.       nameCounter = 0;
  259.    }
  260. }
  261.